from django.contrib import admin

# Register your models here.
from envs.models import Sysyems, Environment, DbInfo, InterfaceInfo, InterfaceHead


@admin.register(DbInfo)
class DbInfoAdmin(admin.ModelAdmin):
    # listdisplay设置要显示在列表中的字段（id字段是Django模型的默认主键）
    list_display = ('db_engine', 'db_instance', 'db_name','entype')

    # list_per_page设置每页显示多少条记录，默认是10
    list_per_page = 50

    # ordering设置默认排序字段，负号表示降序排序
    ordering = ('-created_time',)

    # list_editable 设置默认可编辑字段
    list_editable = ['db_instance','db_name']
@admin.register(Sysyems)
class SysyemsAdmin(admin.ModelAdmin):
    # listdisplay设置要显示在列表中的字段（id字段是Django模型的默认主键）
    list_display = ('system_code', 'system_name', 'system_manager')

    # list_per_page设置每页显示多少条记录，默认是100条
    list_per_page = 50

    # ordering设置默认排序字段，负号表示降序排\]序
    ordering = ('-created_time',)

    # list_editable 设置默认可编辑字段
    list_editable = ['system_name','system_manager']

    # fk_fields 设置显示外键字段
    # fk_fields = ('system_name',)


@admin.register(Environment)
class EnvironmentAdmin(admin.ModelAdmin):
    # listdisplay设置要显示在列表中的字段（id字段是Django模型的默认主键）
    list_display = ('system_name', 'entype', 'address', 'ip','port')

    # list_per_page设置每页显示多少条记录，默认是100条
    list_per_page = 50

    # ordering设置默认排序字段，负号表示降序排序
    ordering = ('-created_time',)

    # list_editable 设置默认可编辑字段
    list_editable = ['address', 'ip']

    # fk_fields 设置显示外键字段
    fk_fields = ('system_name',)

# admin.site.register(Sysyems)
# admin.site.register(Environment)

class InterfaceHeadInline(admin.TabularInline):
    model = InterfaceHead
    fk_name = "interface"

@admin.register(InterfaceInfo)
class InterfaceAdmin(admin.ModelAdmin):
    inlines = [InterfaceHeadInline]
    # listdisplay设置要显示在列表中的字段（id字段是Django模型的默认主键）
    list_display = ('system_name', 'description', 'path', 'method')

    # list_per_page设置每页显示多少条记录，默认是100条
    list_per_page = 50

    # ordering设置默认排序字段，负号表示降序排序
    ordering = ('-created_time',)

    # list_editable 设置默认可编辑字段
    list_editable = ['description', 'path']

    # fk_fields 设置显示外键字段
    fk_fields = ('description',)
    #筛选器
    list_filter =('system_name', 'path', 'method', 'description') #过滤器
    search_fields =('system_name', 'description') #搜索字段


